/** @type {import('tailwindcss').Config} */
module.exports = {
  content: [
    "./index.html",
    "./src/**/*.{vue,js,ts,jsx,tsx}",
    "./public/**/*.html"
  ],
  darkMode: 'class', // 启用暗色模式支持
  theme: {
    extend: {
      fontFamily: {
        'sans': ['Inter', 'system-ui', 'sans-serif'],
        'heading': ['Poppins', 'system-ui', 'sans-serif'],
      },
      colors: {
        // 主题色彩系统
        primary: {
          50: '#eff6ff',
          100: '#dbeafe',
          200: '#bfdbfe',
          300: '#93c5fd',
          400: '#60a5fa',
          500: '#3b82f6',
          600: '#2563eb',
          700: '#1d4ed8',
          800: '#1e40af',
          900: '#1e3a8a',
          950: '#172554',
        },
        // 暗色模式专用颜色
        dark: {
          primary: '#1f2937',   // 深灰主色调
          secondary: '#374151', // 蓝灰辅助色
          surface: '#111827',   // 更深的背景色
          border: '#4b5563',    // 边框色
        },
        // 亮色模式专用颜色
        light: {
          primary: '#ffffff',   // 纯白主色调
          secondary: '#f3f4f6', // 浅灰辅助色
          surface: '#f9fafb',   // 表面色
          border: '#e5e7eb',    // 边框色
        }
      },
      borderRadius: {
        'DEFAULT': '6px', // 全局默认圆角
        'md': '6px',
      },
      boxShadow: {
        'soft': '0 2px 15px -3px rgba(0, 0, 0, 0.07), 0 10px 20px -2px rgba(0, 0, 0, 0.04)',
        'soft-dark': '0 2px 15px -3px rgba(0, 0, 0, 0.3), 0 10px 20px -2px rgba(0, 0, 0, 0.2)',
      },
      animation: {
        'fade-in': 'fadeIn 0.3s ease-in-out',
        'slide-up': 'slideUp 0.3s ease-out',
        'slide-down': 'slideDown 0.3s ease-out',
        'scale-in': 'scaleIn 0.3s ease-out',
      },
      keyframes: {
        fadeIn: {
          '0%': { opacity: '0' },
          '100%': { opacity: '1' },
        },
        slideUp: {
          '0%': { transform: 'translateY(10px)', opacity: '0' },
          '100%': { transform: 'translateY(0)', opacity: '1' },
        },
        slideDown: {
          '0%': { transform: 'translateY(-10px)', opacity: '0' },
          '100%': { transform: 'translateY(0)', opacity: '1' },
        },
        scaleIn: {
          '0%': { transform: 'scale(0.9)', opacity: '0' },
          '100%': { transform: 'scale(1)', opacity: '1' },
        }
      },
      transitionDuration: {
        'DEFAULT': '300ms',
      },
    },
  },
  plugins: [
    require('@tailwindcss/forms'),
    require('daisyui'),
  ],
  daisyui: {
    themes: [
      {
        light: {
          "primary": "#3b82f6",
          "primary-content": "#ffffff",
          "secondary": "#f3f4f6",
          "secondary-content": "#1f2937",
          "accent": "#10b981",
          "accent-content": "#ffffff",
          "neutral": "#374151",
          "neutral-content": "#ffffff",
          "base-100": "#ffffff",
          "base-200": "#f9fafb",
          "base-300": "#f3f4f6",
          "base-content": "#1f2937",
          "info": "#3b82f6",
          "success": "#10b981",
          "warning": "#f59e0b",
          "error": "#ef4444",
          "--rounded-box": "6px",
          "--rounded-btn": "6px",
          "--rounded-badge": "6px",
          "--animation-btn": "0.3s",
          "--animation-input": "0.3s",
          "--btn-focus-scale": "0.98",
        },
      },
      {
        dark: {
          "primary": "#3b82f6",
          "primary-content": "#ffffff",
          "secondary": "#374151",
          "secondary-content": "#f3f4f6",
          "accent": "#10b981",
          "accent-content": "#ffffff",
          "neutral": "#f3f4f6",
          "neutral-content": "#1f2937",
          "base-100": "#1f2937",
          "base-200": "#374151",
          "base-300": "#4b5563",
          "base-content": "#f3f4f6",
          "info": "#3b82f6",
          "success": "#10b981",
          "warning": "#f59e0b",
          "error": "#ef4444",
          "--rounded-box": "6px",
          "--rounded-btn": "6px",
          "--rounded-badge": "6px",
          "--animation-btn": "0.3s",
          "--animation-input": "0.3s",
          "--btn-focus-scale": "0.98",
        },
      },
    ],
    darkTheme: "dark",
    base: true,
    styled: true,
    utils: true,
    prefix: "",
    logs: true,
    themeRoot: ":root",
  },
}